package com.example.Arithmetic.Arithmetic;

import java.util.List;

/**
 * 日期：2023/12/29
 * 时间：13:19
 * 描述：图的顶点类
 */
public class Vertex {
    //    顶点关联的边
    List<Edge> edges;
    //    顶点名字
    String name;
    // 是否被访问过   bfs，dfs用到
    boolean visited = false;


    //    入度   拓扑排序用到
    int inDegree;
    // 状态 0-未访问 1-访问中 2-访问过，用在拓扑排序,状态1用来检测环
    int status;

    //     狄克斯特拉算法用到
//    每个顶点初始状态设置无穷大
    public static final int inf = 0x7fffffff;
    int dist = inf;
    //    上一个顶点
    Vertex prev = null;

    public Vertex(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    @Override
    public String toString() {
        return name+"("+dist+")";
    }
}
